home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / oper_sys / presto / prest1_0.lha / Tests / alarm / test.C < prev    next >
C/C++ Source or Header  |  1991-12-11  |  1KB  |  77 lines

  1.  
  2. #include "presto.h"
  3. #include "alarm.h"
  4. #include <stream.h>
  5. #include <signal.h>
  6. #include <osfcn.h>
  7.  
  8. int tester1()
  9. {
  10.   Alarm *alarm = new Alarm;
  11.  
  12. //  alarm->Init();
  13.  
  14.   for( int j = 0; j < 10; j++ ) {
  15.     dout << "########## tester(1) \n";
  16.     alarm->WakeMeUpAfter( 0.1 );
  17.   }
  18.  
  19.   dout << "TESTER(1) THREAD TERMINATING\n";
  20.   return 0;
  21. }
  22.  
  23. int tester2()
  24. {
  25.   Alarm *alarm = new Alarm;
  26.  
  27. //  alarm->Init();
  28.  
  29.   for( int j = 0; j < 10; j++ ) {
  30.     dout << "########## tester(2) \n";
  31.     alarm->WakeMeUpAfter( 0.1 );
  32.   }
  33.  
  34.   dout << "TESTER(2) THREAD TERMINATING\n";
  35.   return 0;
  36. }
  37.  
  38.  
  39. Main::init()
  40. {
  41.     numprocessors = 1;
  42.     quantum = 0;
  43.  
  44.     for (argc--, argv++; *argv && **argv == '-'; argv++, argc--)
  45.         switch (*(*argv + 1)) {
  46.             case 'q':
  47.                 quantum = atoi(*argv + 2);
  48.                 break;
  49.             case 'n':
  50.                 numprocessors = atoi(*argv + 2);
  51.                 break;
  52.             default:
  53.                 cerr << chr(*(*argv + 1)) << " unknown flag.\n";
  54.                     return -1;
  55.         }
  56.     return 0;
  57. }
  58.  
  59.  
  60. Main::main()
  61. {
  62.   Thread *t[2];
  63.  
  64.   t[0] = new Thread("ALARM_TESTER(1)");
  65.   t[0]->start( (Objany) this, (PFany) tester1 );
  66.  
  67.   t[1] = new Thread("ALARM_TESTER(2)");
  68.   t[1]->start( (Objany) this, (PFany) tester2 );
  69.  
  70.   for( int j = 0; j < 10; j++ ) {
  71.     for( int i = 0; i < 100000; i++ );
  72.     dout << "DING \n";
  73.   }
  74.  
  75.   dout << "BYE! BYE!\n\n";
  76. }
  77.